3d235f3603ab88becc470c2dbbd6449eeee0ba77,src/net/sourceforge/processdash/ev/ui/EVWeekReport.java,EVWeekReport,writeReport,#String#EVTaskList#Date#EVReportSettings#EVTaskFilter#number#,220

Before Change


            interpOut("<td class=header>${Summary.Plan}</td>"
                    + "<td class=header>${Summary.Actual}</td>"
                    + "<td class=header>${Summary.Ratio}</td><td></td>");
        interpOut("<td class=header>${Summary.Plan}</td>"
                + "<td class=header>${Summary.Actual}</td>"
                + "<td class=header>${Summary.Ratio}</td></tr>\n");

        String thisWeekKey;
        String keySuffix = (monthly ? "_Month" : "_Week");
        if (reportingPeriodIncludesToday) thisWeekKey = "This" + keySuffix;
        else if (reportingPeriodPrecedesToday) thisWeekKey = "Last" + keySuffix;
        else thisWeekKey = "This_Period";
        out.print("<tr><td class=left>"
                + effRes.getHTML("Summary." + thisWeekKey)
                + "</td><td></td>");
        if (taskFilter == null) {
            double directTimeThisWeek;
            if (monthly)
                directTimeThisWeek = sumActualTime(actualTimeThisWeek);
            else
                directTimeThisWeek = weekSlice.getActualDirectTime();
            printTimeData(weekSlice.getPlanDirectTime(), directTimeThisWeek);
            out.print("<td></td>");
        }
        printPctData(planValueThisWeek / totalPlanTime, //
            valueEarnedThisWeek / totalPlanTime);
        out.print("</tr>\n");

        out.print("<tr><td class=left>" + encodeHTML(resources.format(
                "Summary.To_Date_FMT", effDateDisplay)) + "</td><td></td>");
        double directTimeToDate = 0;
        if (taskFilter == null) {
            if (monthly)
                directTimeToDate = schedule.get(0).getActualDirectTime()
                        + sumActualTime(getActualTimeSpent(tasks, startDate,
                            effDate));
            else
                directTimeToDate = weekSlice.getCumActualDirectTime();
            printTimeData(weekSlice.getCumPlanDirectTime(), directTimeToDate);
            out.print("<td></td>");
        }
        printPctData(planValueToDate / totalPlanTime, //
            valueEarnedToDate / totalPlanTime);
        out.print("</tr>\n");

        double numWeeks = Double.NaN;
        if (startDate != null)
            numWeeks = (effDate.getTime() - startDate.getTime() - EVSchedule
                    .dstDifference(startDate.getTime(), effDate.getTime()))
                    / (double) MILLIS_PER_WEEK;
        if (monthly) {
            numWeeks = numWeeks / WEEKS_PER_MONTH;
            interpOut("<tr" + indivDetail + "><td class=left>"
                    + "${Month.Summary.Average_per_Month}</td><td></td>");
        } else {
            interpOut("<tr" + indivDetail
                    + "><td class=left>${Summary.Average_per_Week}</td><td></td>");
        }
        if (taskFilter == null) {
            double planTimePerWeek = weekSlice.getCumPlanDirectTime() / numWeeks;
            double actualTimePerWeek = directTimeToDate / numWeeks;
            printTimeData(planTimePerWeek, actualTimePerWeek);
            out.print("<td></td>");
        }
        double planEVPerWeek = planValueToDate / (totalPlanTime * numWeeks);
        double actualEVPerWeek = valueEarnedToDate / (totalPlanTime * numWeeks);
        printPctData(planEVPerWeek, actualEVPerWeek);
        out.print("</tr>\n");

        if (taskFilter == null) {

After Change


        String hh = (purpose == SPLIT_REPORT ? "h2" : "h3");

        String personalDataID = evModel.getPersonalDataID();
        boolean shouldHideSummary = (privacyFilter != null
                && personalDataID != null
                && privacyFilter.include(personalDataID) == false);

        if (!shouldHideSummary) {

            interpOut("<" + hh + indivDetail + ">${Summary.Header}");
            if (isTopLevel(purpose) && showAssignedTo && !isExporting()) {
                String splitLink = (String) env.get("REQUEST_URI");
                if (purpose == PLAIN_REPORT)
                    splitLink = HTMLUtils.appendQuery(splitLink, SPLIT_PARAM, "t");
                else
                    splitLink = HTMLUtils.removeParam(splitLink, SPLIT_PARAM);
                out.print("  <span class='nav'><a href='");
                out.print(splitLink);
                out.print("'>");
                out.print(resources.getHTML(purpose == PLAIN_REPORT ? "Show_Split"
                        : "Show_Rollup"));
                out.print("</a></span>");
            }
            out.print("</" + hh + ">");
            out.print("<table border=1 name='summary'><tr><td></td><td></td>");
            if (taskFilter == null)
                interpOut("<td class=header colspan=3>${Summary.Direct_Hours}"
                        + "</td><td></td>");
            interpOut("<td class=header colspan=3>${Summary.Earned_Value}"
                    + "</td></tr>\n" //
                    + "<tr><td></td><td></td>");
            if (taskFilter == null)
                interpOut("<td class=header>${Summary.Plan}</td>"
                        + "<td class=header>${Summary.Actual}</td>"
                        + "<td class=header>${Summary.Ratio}</td><td></td>");
            interpOut("<td class=header>${Summary.Plan}</td>"
                    + "<td class=header>${Summary.Actual}</td>"
                    + "<td class=header>${Summary.Ratio}</td></tr>\n");
    
            String thisWeekKey;
            String keySuffix = (monthly ? "_Month" : "_Week");
            if (reportingPeriodIncludesToday) thisWeekKey = "This" + keySuffix;
            else if (reportingPeriodPrecedesToday) thisWeekKey = "Last" + keySuffix;
            else thisWeekKey = "This_Period";
            out.print("<tr><td class=left>"
                    + effRes.getHTML("Summary." + thisWeekKey)
                    + "</td><td></td>");
            if (taskFilter == null) {
                double directTimeThisWeek;
                if (monthly)
                    directTimeThisWeek = sumActualTime(actualTimeThisWeek);
                else
                    directTimeThisWeek = weekSlice.getActualDirectTime();
                printTimeData(weekSlice.getPlanDirectTime(), directTimeThisWeek);
                out.print("<td></td>");
            }
            printPctData(planValueThisWeek / totalPlanTime, //
                valueEarnedThisWeek / totalPlanTime);
            out.print("</tr>\n");
    
            out.print("<tr><td class=left>" + encodeHTML(resources.format(
                    "Summary.To_Date_FMT", effDateDisplay)) + "</td><td></td>");
            double directTimeToDate = 0;
            if (taskFilter == null) {
                if (monthly)
                    directTimeToDate = schedule.get(0).getActualDirectTime()
                            + sumActualTime(getActualTimeSpent(tasks, startDate,
                                effDate));
                else
                    directTimeToDate = weekSlice.getCumActualDirectTime();
                printTimeData(weekSlice.getCumPlanDirectTime(), directTimeToDate);
                out.print("<td></td>");
            }
            printPctData(planValueToDate / totalPlanTime, //
                valueEarnedToDate / totalPlanTime);
            out.print("</tr>\n");
    
            double numWeeks = Double.NaN;
            if (startDate != null)
                numWeeks = (effDate.getTime() - startDate.getTime() - EVSchedule
                        .dstDifference(startDate.getTime(), effDate.getTime()))
                        / (double) MILLIS_PER_WEEK;
            if (monthly) {
                numWeeks = numWeeks / WEEKS_PER_MONTH;
                interpOut("<tr" + indivDetail + "><td class=left>"
                        + "${Month.Summary.Average_per_Month}</td><td></td>");
            } else {
                interpOut("<tr" + indivDetail
                        + "><td class=left>${Summary.Average_per_Week}</td><td></td>");
            }
            if (taskFilter == null) {
                double planTimePerWeek = weekSlice.getCumPlanDirectTime() / numWeeks;
                double actualTimePerWeek = directTimeToDate / numWeeks;
                printTimeData(planTimePerWeek, actualTimePerWeek);
                out.print("<td></td>");
            }
            double planEVPerWeek = planValueToDate / (totalPlanTime * numWeeks);
            double actualEVPerWeek = valueEarnedToDate / (totalPlanTime * numWeeks);
            printPctData(planEVPerWeek, actualEVPerWeek);
            out.print("</tr>\n");
    
            if (taskFilter == null) {